home *** CD-ROM | disk | FTP | other *** search
/ Player Photo CD 1 / Player Photo CD - Volume 1.iso / setup / title.mst < prev    next >
Text File  |  1994-11-27  |  6KB  |  241 lines

  1.     '' Global variables
  2.  
  3.     GLOBAL TitleShortName$
  4.     GLOBAL TitleLongName$
  5.     GLOBAL MVBFileName$
  6.     GLOBAL PromptForPath%
  7.     GLOBAL DefaultPath$
  8.     GLOBAL ProgManGroup$
  9.     GLOBAL ProgManItem$
  10.     GLOBAL IconName$
  11.  
  12.     '' ****************************************************************
  13.     
  14.     TitleShortName$ = "Legend1"
  15.     TitleLongName$ = "Player PhotoMania #1"
  16.         
  17.     MVBFileName$ = "player1"
  18.         
  19.     PromptForPath% = 0
  20.     DefaultPath$ = "c:\legend"
  21.     
  22.     ProgManGroup$ = "Player"
  23.     ProgManItem$ = "Player PhotoMania 1"
  24.     IconName$ = "pstill1"
  25.     
  26.  
  27.     GLOBAL CUIDLL$
  28.  
  29.     '' Include files
  30.     '$INCLUDE 'setupapi.inc'
  31.     
  32.     '' Custom UI dll
  33.     CUIDLL$ = "mscuistf.dll"
  34.     
  35.     '' Dialog ID's
  36.     CONST DESTPATH      = 1000
  37.     CONST APPHELP       = 2000
  38.     CONST TOOBIG        = 3000
  39.     CONST BADPATH       = 4000
  40.     CONST SUCCESS       = 5000
  41.     
  42.     '' Bitmap ID
  43.     CONST LOGO = 1
  44.     
  45.     '' Functions and subroutines
  46.     DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  47.     DECLARE FUNCTION GetTitleDir (szDefault$) AS STRING
  48.     DECLARE FUNCTION CopyFiles(szTitleDir$) AS INTEGER
  49.     DECLARE SUB ModifyProgramManager
  50.     DECLARE SUB ShowSuccess
  51.     
  52.     i% = SetSizeCheckMode(scmOff)
  53.     
  54.     SetTitle "Player PhotoMania #1"
  55.     SetBitmap CUIDLL$, LOGO 
  56.     
  57.     '' Read in the INF file.
  58.     
  59.  
  60.     ReadInfFile GetSymbolValue("STF_CWDDIR") + "TITLE.INF"
  61.     
  62.     '' Modify Program Manager
  63.     ModifyProgramManager    
  64.     
  65.     '' Success dialog
  66.     ShowSuccess
  67.     
  68. QUIT:
  69.     
  70.     END
  71.     
  72.  
  73. '*************************************************************************
  74. '** Purpose:
  75. '**     Prompts the user for a path for the title files
  76. '** Arguments:
  77. '**     szDefault$ - default path
  78. '** Returns:
  79. '**     New valid path name, or "" if the user quit.
  80. '*************************************************************************
  81.  
  82. FUNCTION GetTitleDir (szDefault$) STATIC AS STRING
  83.  
  84.     SetSymbolValue "String", TitleShortName$
  85.     SetSymbolValue "EditTextIn", szDefault$
  86.     SetSymbolValue "EditFocus", "ALL"
  87.  
  88.     GETPATH:
  89.  
  90.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, "FHelpDlgProc")
  91.  
  92.     IF sz$ = "CONTINUE" THEN
  93.         szTitleDir$ = GetSymbolValue("EditTextOut")
  94.         IF IsDirWritable(szTitleDir$) = 0 THEN
  95.  
  96.             BADPATH:
  97.  
  98.             sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfoDlgProc", 0, "")
  99.             IF sz$ = "REACTIVATE" THEN
  100.                 GOTO BADPATH
  101.             END IF
  102.             UIPop 1
  103.             GOTO GETPATH
  104.         END IF
  105.         UIPop 1
  106.         CreateDir szTitleDir$, cmoNone
  107.  
  108.     ELSEIF sz$ = "REACTIVATE" THEN
  109.         GOTO GETPATH
  110.  
  111.     ELSE
  112.         szTitleDir$ = ""
  113.  
  114.     END IF
  115.  
  116.     GetTitleDir = szTitleDir$
  117.  
  118. END FUNCTION
  119.  
  120.  
  121. '*************************************************************************
  122. '** Purpose:
  123. '**     Copies the files in the INF file
  124. '** Arguments:
  125. '**     szTitleDir$ - destination directory for the title files
  126. '** Returns
  127. '**     1 if files were copied, 0 otherwise
  128. '*************************************************************************
  129.  
  130. FUNCTION CopyFiles(szTitleDir$) STATIC AS INTEGER
  131.  
  132.     '' Add all system files to the copy list
  133.     AddSectionFilesToCopyList "System Files", GetSymbolValue("STF_SRCDIR") + "setup\", GetWindowsSysDir()
  134.     
  135.     '' Add all of the title files to the copy list
  136.     AddSectionFilesToCopyList "Installed Title Files", GetSymbolValue("STF_SRCDIR"), szTitleDir$
  137.     
  138.     '' Check size
  139.     szExtras$ = "Extra"
  140.     szCosts$ = "Costs"
  141.     szNeededs$ = "Neededs"
  142.     FOR i% = 1 TO 26 STEP 1
  143.         AddListItem szExtras$, "0"
  144.     NEXT i%
  145.     
  146.     '' We assume that VIEWER.INI will take another 4K
  147.     ReplaceListItem szExtras$, ASC(MID$(GetWindowsDir(), 1, 1)) - ASC("A") + 1, STR$(4096)
  148.     
  149.     '' Get amount of space required
  150.     StillNeed& = GetCopyListCost(szExtras$, szCosts$, szNeededs$)
  151.     
  152.     '' Put up a message if there is not enough space
  153.     FOR i% = 1 TO 26 STEP 1
  154.         IF VAL(GetListItem(szNeededs$, i%)) > 0 THEN
  155.     
  156.             SetSymbolValue "String1", LTRIM$(STR$(VAL(GetListItem(szCosts$, i%)) / 1024))
  157.             SetSymbolValue "String2", CHR$(i% - 1 + ASC("A"))
  158.     
  159.             TOOBIG:
  160.     
  161.             sz$ = UIStartDlg(CUIDLL$, TOOBIG, "FInfoDlgProc", 0, "")
  162.             IF sz$ = "REACTIVATE" THEN
  163.                 GOTO TOOBIG
  164.             END IF
  165.             UIPop 1
  166.             CopyFiles = 0
  167.             GOTO DONTCOPY
  168.         END IF
  169.     NEXT i%
  170.     
  171.     '' Copy the files
  172.     CopyFilesInCopyList
  173.     
  174.     CopyFiles = 1
  175.  
  176. DONTCOPY:
  177.  
  178. END FUNCTION
  179.  
  180.  
  181. '*************************************************************************
  182. '** Purpose:
  183. '**     Puts up a success dialog
  184. '*************************************************************************
  185.  
  186. SUB ShowSuccess STATIC
  187.  
  188.     SUCCESS:
  189.     
  190.     SetSymbolValue "String1", TitleShortName$
  191.     sz$ = UIStartDlg(CUIDLL$, SUCCESS, "FInfoDlgProc", 0, "")
  192.     IF sz$ = "REACTIVATE" THEN
  193.         GOTO SUCCESS
  194.     END IF
  195.     UIPop 1
  196.     
  197. END SUB
  198.  
  199. '*************************************************************************
  200. '** Purpose:
  201. '**     Appends a file name to the end of a directory path,
  202. '**     inserting a backslash character as needed.
  203. '** Arguments:
  204. '**     szDir$  - full directory path (with optional ending "\")
  205. '**     szFile$ - filename to append to directory
  206. '** Returns:
  207. '**     Resulting fully qualified path name.
  208. '*************************************************************************
  209.  
  210. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  211.     IF szDir$ = "" THEN
  212.         MakePath = szFile$
  213.     ELSEIF szFile$ = "" THEN
  214.         MakePath = szDir$
  215.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  216.         MakePath = szDir$ + szFile$
  217.     ELSE
  218.         MakePath = szDir$ + "\" + szFile$
  219.     END IF
  220. END FUNCTION
  221.  
  222.  
  223. '*************************************************************************
  224. '** Purpose:
  225. '**     Creates program manager entries for the title
  226. '*************************************************************************
  227.  
  228. SUB ModifyProgramManager STATIC
  229.  
  230.     szGork$ = GetSymbolValue("STF_SRCDIR")
  231.  
  232.     CreateProgmanGroup ProgmanGroup$, "", cmoNone
  233.     ShowProgmanGroup ProgmanGroup$, 1, cmoNone
  234.     
  235.     CreateProgmanItem ProgmanGroup$, ProgmanItem$, MakePath(GetSymbolValue("STF_SRCDIR"), MVBFileName$ + ".exe"), MakePath(GetSymbolValue("STF_SRCDIR"), IconName$ + ".ICO")+",0,0,0,"+szGork$, cmoOverwrite
  236.     CreateProgmanItem ProgmanGroup$, "Readme", MakePath(GetSymbolValue("STF_SRCDIR"), "readme.txt"), MakePath(GetSymbolValue("STF_SRCDIR"), "lrme.ICO")+",0,0,0,"+szGork$,cmoOverwrite
  237.  
  238. END SUB
  239.  
  240.  
  241.